package com.southminority.ethnic.pojo;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 研究进展实体类
 * 对应数据库表：research_progress
 * 
 * @author SouthMinority
 */
@Data
@TableName("research_progress")
public class ResearchProgress implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 研究进展ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 进展标题
     */
    @TableField("title")
    private String title;

    /**
     * 关联项目ID
     */
    @TableField("project_id")
    private Long projectId;

    /**
     * 归属机构ID
     */
    @TableField("organization_id")
    private Long organizationId;

    /**
     * 进展日期
     */
    @TableField("progress_date")
    private LocalDate progressDate;

    /**
     * 进展月份（如：2023年11月）
     */
    @TableField("progress_month")
    private String progressMonth;

    /**
     * 研究阶段
     */
    @TableField("stage")
    private String stage;

    /**
     * 进展描述
     */
    @TableField("description")
    private String description;

    /**
     * 详细内容
     */
    @TableField("content")
    private String content;

    /**
     * 主要成就（JSON格式）
     */
    @TableField("achievements")
    private String achievements;

    /**
     * 里程碑事件（JSON格式）
     */
    @TableField("milestones")
    private String milestones;

    /**
     * 参与人员（JSON格式）
     */
    @TableField("participants")
    private String participants;

    /**
     * 下一步计划
     */
    @TableField("next_steps")
    private String nextSteps;

    /**
     * 遇到的困难
     */
    @TableField("difficulties")
    private String difficulties;

    /**
     * 解决方案
     */
    @TableField("solutions")
    private String solutions;

    /**
     * 研究领域
     */
    @TableField("research_field")
    private String researchField;

    /**
     * 项目完成度百分比
     */
    @TableField("progress_percentage")
    private Integer progressPercentage;

    /**
     * 封面图片
     */
    @TableField("cover_image")
    private String coverImage;

    /**
     * 相关图片URLs（JSON格式）
     */
    @TableField("image_urls")
    private String imageUrls;

    /**
     * 附件文件URLs（JSON格式）
     */
    @TableField("attachment_urls")
    private String attachmentUrls;

    /**
     * 关键词
     */
    @TableField("keywords")
    private String keywords;

    /**
     * 标签
     */
    @TableField("tags")
    private String tags;

    /**
     * 浏览次数
     */
    @TableField("view_count")
    private Integer viewCount;

    /**
     * 排序
     */
    @TableField("sort_order")
    private Integer sortOrder;

    /**
     * 是否重点展示：1-是，0-否
     */
    @TableField("is_featured")
    private Integer isFeatured;

    /**
     * 是否在时间线显示：1-是，0-否
     */
    @TableField("is_timeline")
    private Integer isTimeline;

    /**
     * 状态：1-已发布，0-草稿，-1-已删除
     */
    @TableField("status")
    private Integer status;

    /**
     * 创建时间
     */
    @TableField("create_time")
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    @TableField("update_time")
    private LocalDateTime updateTime;
} 
